package com.lxmes.device.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.lxmes.common.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.lxmes.common.core.domain.BaseEntity;

/**
 * 保养通知对象 fw_maintenance_notification
 *
 * @author zhangzhiyu
 * @date 2023-05-11
 */
@ApiModel(value = "FwMaintenanceNotification", description = "保养通知对象")
public class FwMaintenanceNotification extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 序号 */
    @ApiModelProperty("序号")
    private Long id;

    /** 公司代码 */
    @Excel(name = "公司代码")
    @ApiModelProperty("公司代码")
    private String factoryCode;

    /** 公司名称 */
    @Excel(name = "公司名称")
    @ApiModelProperty("公司名称")
    private String factoryName;

    /** 通知编号 */
    @Excel(name = "通知编号")
    @ApiModelProperty("通知编号")
    private String notificationNumber;

    /** 车牌号 */
    @Excel(name = "车牌号")
    @ApiModelProperty("车牌号")
    private String licensePlate;

    /** 车辆条形码 */
    @Excel(name = "车辆条形码")
    @ApiModelProperty("车辆条形码")
    private String vehicleBarcode;

    /** 车主电话 */
    @Excel(name = "车主电话")
    @ApiModelProperty("车主电话")
    private String ownerPhone;

    /** 微信 */
    @Excel(name = "微信")
    @ApiModelProperty("微信")
    private String wechat;

    /** 维保类型 */
    @Excel(name = "维保类型")
    @ApiModelProperty("维保类型")
    private String maintenanceType;

    /** 配件编号 */
    @Excel(name = "配件编号")
    @ApiModelProperty("配件编号")
    private String partNumber;

    /** 规格型号 */
    @Excel(name = "规格型号")
    @ApiModelProperty("规格型号")
    private String specifications;

    /** 单位 */
    @Excel(name = "单位")
    @ApiModelProperty("单位")
    private String unit;

    /** 维保用量 */
    @Excel(name = "维保用量")
    @ApiModelProperty("维保用量")
    private BigDecimal maintenanceAmount;

    /** 维保时间 */
    @Excel(name = "维保时间")
    @ApiModelProperty("维保时间")
    private BigDecimal maintenanceTime;

    /** 维保工时 */
    @Excel(name = "维保工时")
    @ApiModelProperty("维保工时")
    private BigDecimal maintenanceHours;

    /** 维保公里数 */
    @Excel(name = "维保公里数")
    @ApiModelProperty("维保公里数")
    private BigDecimal maintenanceKm;

    /** 维保组织 */
    @Excel(name = "维保组织")
    @ApiModelProperty("维保组织")
    private String maintenanceOrganization;

    /** 维保地址 */
    @Excel(name = "维保地址")
    @ApiModelProperty("维保地址")
    private String maintenanceAddress;

    /** 维保联系人 */
    @Excel(name = "维保联系人")
    @ApiModelProperty("维保联系人")
    private String contactPerson;

    /** 维保电话 */
    @Excel(name = "维保电话")
    @ApiModelProperty("维保电话")
    private String contactPhone;

    /** 维保工位 */
    @Excel(name = "维保工位")
    @ApiModelProperty("维保工位")
    private String maintenancePosition;

    /** 通知方式 */
    @Excel(name = "通知方式")
    @ApiModelProperty("通知方式")
    private String notifyMethod;

    /** 通知时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "通知时间", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty("通知时间")
    private Date notifyTime;

    /** 接收时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "接收时间", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty("接收时间")
    private Date receiveTime;

    /** 接收人 */
    @Excel(name = "接收人")
    @ApiModelProperty("接收人")
    private String receiver;

    /** 预约时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "预约时间", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty("预约时间")
    private Date appointmentTime;


    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setFactoryCode(String factoryCode)
    {
        this.factoryCode = factoryCode;
    }

    public String getFactoryCode()
    {
        return factoryCode;
    }
    public void setFactoryName(String factoryName)
    {
        this.factoryName = factoryName;
    }

    public String getFactoryName()
    {
        return factoryName;
    }
    public void setNotificationNumber(String notificationNumber)
    {
        this.notificationNumber = notificationNumber;
    }

    public String getNotificationNumber()
    {
        return notificationNumber;
    }
    public void setLicensePlate(String licensePlate)
    {
        this.licensePlate = licensePlate;
    }

    public String getLicensePlate()
    {
        return licensePlate;
    }
    public void setVehicleBarcode(String vehicleBarcode)
    {
        this.vehicleBarcode = vehicleBarcode;
    }

    public String getVehicleBarcode()
    {
        return vehicleBarcode;
    }
    public void setOwnerPhone(String ownerPhone)
    {
        this.ownerPhone = ownerPhone;
    }

    public String getOwnerPhone()
    {
        return ownerPhone;
    }
    public void setWechat(String wechat)
    {
        this.wechat = wechat;
    }

    public String getWechat()
    {
        return wechat;
    }
    public void setMaintenanceType(String maintenanceType)
    {
        this.maintenanceType = maintenanceType;
    }

    public String getMaintenanceType()
    {
        return maintenanceType;
    }
    public void setPartNumber(String partNumber)
    {
        this.partNumber = partNumber;
    }

    public String getPartNumber()
    {
        return partNumber;
    }
    public void setSpecifications(String specifications)
    {
        this.specifications = specifications;
    }

    public String getSpecifications()
    {
        return specifications;
    }
    public void setUnit(String unit)
    {
        this.unit = unit;
    }

    public String getUnit()
    {
        return unit;
    }
    public void setMaintenanceAmount(BigDecimal maintenanceAmount)
    {
        this.maintenanceAmount = maintenanceAmount;
    }

    public BigDecimal getMaintenanceAmount()
    {
        return maintenanceAmount;
    }
    public void setMaintenanceTime(BigDecimal maintenanceTime)
    {
        this.maintenanceTime = maintenanceTime;
    }

    public BigDecimal getMaintenanceTime()
    {
        return maintenanceTime;
    }
    public void setMaintenanceHours(BigDecimal maintenanceHours)
    {
        this.maintenanceHours = maintenanceHours;
    }

    public BigDecimal getMaintenanceHours()
    {
        return maintenanceHours;
    }
    public void setMaintenanceKm(BigDecimal maintenanceKm)
    {
        this.maintenanceKm = maintenanceKm;
    }

    public BigDecimal getMaintenanceKm()
    {
        return maintenanceKm;
    }
    public void setMaintenanceOrganization(String maintenanceOrganization)
    {
        this.maintenanceOrganization = maintenanceOrganization;
    }

    public String getMaintenanceOrganization()
    {
        return maintenanceOrganization;
    }
    public void setMaintenanceAddress(String maintenanceAddress)
    {
        this.maintenanceAddress = maintenanceAddress;
    }

    public String getMaintenanceAddress()
    {
        return maintenanceAddress;
    }
    public void setContactPerson(String contactPerson)
    {
        this.contactPerson = contactPerson;
    }

    public String getContactPerson()
    {
        return contactPerson;
    }
    public void setContactPhone(String contactPhone)
    {
        this.contactPhone = contactPhone;
    }

    public String getContactPhone()
    {
        return contactPhone;
    }
    public void setMaintenancePosition(String maintenancePosition)
    {
        this.maintenancePosition = maintenancePosition;
    }

    public String getMaintenancePosition()
    {
        return maintenancePosition;
    }
    public void setNotifyMethod(String notifyMethod)
    {
        this.notifyMethod = notifyMethod;
    }

    public String getNotifyMethod()
    {
        return notifyMethod;
    }
    public void setNotifyTime(Date notifyTime)
    {
        this.notifyTime = notifyTime;
    }

    public Date getNotifyTime()
    {
        return notifyTime;
    }
    public void setReceiveTime(Date receiveTime)
    {
        this.receiveTime = receiveTime;
    }

    public Date getReceiveTime()
    {
        return receiveTime;
    }
    public void setReceiver(String receiver)
    {
        this.receiver = receiver;
    }

    public String getReceiver()
    {
        return receiver;
    }
    public void setAppointmentTime(Date appointmentTime)
    {
        this.appointmentTime = appointmentTime;
    }

    public Date getAppointmentTime()
    {
        return appointmentTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("factoryCode", getFactoryCode())
            .append("factoryName", getFactoryName())
            .append("notificationNumber", getNotificationNumber())
            .append("licensePlate", getLicensePlate())
            .append("vehicleBarcode", getVehicleBarcode())
            .append("ownerPhone", getOwnerPhone())
            .append("wechat", getWechat())
            .append("maintenanceType", getMaintenanceType())
            .append("partNumber", getPartNumber())
            .append("specifications", getSpecifications())
            .append("unit", getUnit())
            .append("maintenanceAmount", getMaintenanceAmount())
            .append("maintenanceTime", getMaintenanceTime())
            .append("maintenanceHours", getMaintenanceHours())
            .append("maintenanceKm", getMaintenanceKm())
            .append("maintenanceOrganization", getMaintenanceOrganization())
            .append("maintenanceAddress", getMaintenanceAddress())
            .append("contactPerson", getContactPerson())
            .append("contactPhone", getContactPhone())
            .append("maintenancePosition", getMaintenancePosition())
            .append("notifyMethod", getNotifyMethod())
            .append("notifyTime", getNotifyTime())
            .append("receiveTime", getReceiveTime())
            .append("receiver", getReceiver())
            .append("appointmentTime", getAppointmentTime())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}
